/** * Document Name: Neuron API - v2.0.0 * Developed By : digitalscorpions.in */ !(function($) { "use strict"; // Prevent # / blank link to jump to top $("a[href='#']").on("click", function(e) { e.preventDefault(); }); // Smooth scroll for the navigation menu and links with .scrollto classes var scrolltoOffset = $('#header').outerHeight() - 1; $(document).on('click', '.nav-menu a, .mobile-nav a, .scrollto', function(e) { if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) { var target = $(this.hash); if (target.length) { e.preventDefault(); var scrollto = target.offset().top - scrolltoOffset; if ($(this).attr("href") == '#header') { scrollto = 0; } $('html, body').animate({ scrollTop: scrollto }, 1500, 'easeInOutExpo'); if ($(this).parents('.nav-menu, .mobile-nav').length) { $('.nav-menu .active, .mobile-nav .active').removeClass('active'); $(this).closest('li').addClass('active'); } if ($('body').hasClass('mobile-nav-active')) { $('body').removeClass('mobile-nav-active'); $('.mobile-nav-toggle i').toggleClass('icofont-navigation-menu icofont-close'); $('.mobile-nav-overly').fadeOut(); } return false; } } }); // Activate smooth scroll on page load with hash links in the url $(document).ready(function() { if (window.location.hash) { var initial_nav = window.location.hash; if ($(initial_nav).length) { var scrollto = $(initial_nav).offset().top - scrolltoOffset; $('html, body').animate({ scrollTop: scrollto }, 1500, 'easeInOutExpo'); } } }); // Navigation active state on scroll var nav_sections = $('section'); var main_nav = $('.nav-menu, .mobile-nav'); $(window).on('scroll', function() { var cur_pos = $(this).scrollTop() + 200; nav_sections.each(function() { var top = $(this).offset().top, bottom = top + $(this).outerHeight(); if (cur_pos >= top && cur_pos <= bottom) { if (cur_pos <= bottom) { main_nav.find('li').removeClass('active'); } main_nav.find('a[href="#' + $(this).attr('id') + '"]').parent('li').addClass('active'); } if (cur_pos < 300) { $(".nav-menu ul:first li:first, .mobile-menu ul:first li:first").addClass('active'); } }); }); // Mobile Navigation if ($('.nav-menu').length) { var $mobile_nav = $('.nav-menu').clone().prop({ class: 'mobile-nav d-lg-none' }); $('body').append($mobile_nav); $('body').prepend(''); $('body').append('
'); $(document).on('click', '.mobile-nav-toggle', function(e) { $('body').toggleClass('mobile-nav-active'); $('.mobile-nav-toggle i').toggleClass('icofont-navigation-menu icofont-close'); $('.mobile-nav-overly').toggle(); }); $(document).on('click', '.mobile-nav .drop-down > a', function(e) { e.preventDefault(); $(this).next().slideToggle(300); $(this).parent().toggleClass('active'); }); $(document).click(function(e) { var container = $(".mobile-nav, .mobile-nav-toggle"); if (!container.is(e.target) && container.has(e.target).length === 0) { if ($('body').hasClass('mobile-nav-active')) { $('body').removeClass('mobile-nav-active'); $('.mobile-nav-toggle i').toggleClass('icofont-navigation-menu icofont-close'); $('.mobile-nav-overly').fadeOut(); } } }); } else if ($(".mobile-nav, .mobile-nav-toggle").length) { $(".mobile-nav, .mobile-nav-toggle").hide(); } // Toggle .header-scrolled class to #header when page is scrolled $(window).scroll(function() { if ($(this).scrollTop() > 100) { $('#header').addClass('header-scrolled'); $('#topbar').addClass('topbar-scrolled'); } else { $('#header').removeClass('header-scrolled'); $('#topbar').removeClass('topbar-scrolled'); } }); if ($(window).scrollTop() > 100) { $('#header').addClass('header-scrolled'); $('#topbar').addClass('topbar-scrolled'); } // Preloader $(window).on('load', function() { if ($('#preloader').length) { $('#preloader').delay(100).fadeOut('slow', function() { $(this).remove(); }); } }); })(jQuery); //--- Utility for showing messages function showMessage(mIcon, mMessage){ mParentTag = "ds_system_message"; mBtnClass = "text-white"; mClass = "ds-msg rounded p-1 m-1 align-middle"; switch(mIcon) { case "success": mClass += " bg-success text-white"; break; case "error": mClass += " bg-danger text-white"; break; case "warning": mClass += " bg-warning"; mBtnClass = "text-dark"; break; default: mClass += " bg-info text-white"; break; } $("#" + mParentTag).append($("